/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2022-2022. All rights reserved.
 */

package com.examples.application.assembler;

import com.examples.application.dto.IsvProduceReq;
import com.examples.model.NewInstanceReq;
import com.examples.model.QueryInstanceReq;
import com.examples.model.RefreshInstanceReq;
import com.examples.model.ReleaseInstanceReq;
import com.examples.model.UpdateInstanceStatusReq;
import com.examples.model.UpgradeInstanceReq;

/**
 * SaaS生产接口请求转换
 */
@org.mapstruct.Mapper(componentModel = "spring")
public interface IsvProduceAssembler {
    NewInstanceReq toNewInstanceReq(IsvProduceReq isvProduceReq);

    QueryInstanceReq toQueryInstanceReq(IsvProduceReq isvProduceReq);

    RefreshInstanceReq toRefreshInstanceReq(IsvProduceReq isvProduceReq);

    UpdateInstanceStatusReq toUpdateInstanceStatusReq(IsvProduceReq isvProduceReq);

    ReleaseInstanceReq toReleaseInstanceReq(IsvProduceReq isvProduceReq);

    UpgradeInstanceReq toUpgradeInstanceReq(IsvProduceReq isvProduceReq);
}
